home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 4
/
Aminet 4 - November 1994.iso
/
aminet
/
comm
/
net
/
dnet_src.lha
/
dnet
/
amiga
/
lib
/
dgetioctl.c
< prev
next >
Wrap
C/C++ Source or Header
|
1989-11-05
|
682b
|
35 lines
/*
* DGetIoctl.C
*/
#include "lib.h"
short
DGetIoctl(_chan, pval, paux)
void *_chan;
short *pval;
char *paux;
{
CHANN *chan = (CHANN *)_chan;
IOSTD *ior;
short cmd = -1;
if ((ior = (IOSTD *)GetHead(&chan->rdylist)) || (ior = (IOSTD *)GetHead(&chan->port.mp_MsgList))) {
if (ior->io_Command == DNCMD_IOCTL) {
CIOCTL *cio = (CIOCTL *)ior->io_Data;
cmd = cio->cmd;
*pval = (cio->valh << 8) | cio->vall;
*paux = cio->valaux;
Forbid();
Remove((NODE *)ior);
ReplyMsg((MSG *)ior);
Permit();
}
}
FixSignal(chan);
if (chan->eof)
SetSignal(1 << chan->port.mp_SigBit, 1 << chan->port.mp_SigBit);
return(cmd);
}